iT邦幫忙

2025 iThome 鐵人賽

DAY 7
0
Software Development

用leetcode系統化學習C語言系列 第 7

進階 C 語言陣列練習

  • 分享至 

  • xImage
  •  

今天挑戰的題目是 LeetCode 1672「Richest Customer Wealth」。給予一個二維陣列 accounts,每行代表一個顧客,每列代表不同銀行帳戶的金額。目標是找出每個顧客財富的總和,並回傳最大的財富值。此題很適合第七天練習,因為它是「二維陣列 + 累加 + 巢狀迴圈」的組合,剛好能接續前幾天熟悉的一維陣列概念,並增加一點進階的層次。

解題思路:
這題要找出「最有錢的顧客」。題目給一個二維陣列,每一列代表一位顧客在不同銀行的存款。我們需要計算每一列的總和,然後回傳最大的那個值。
流程如下:
1.設一個 maxWealth 變數,記錄目前遇到的最大財富
2.用迴圈依序走訪每一位顧客,並計算該顧客的所有帳戶金額總和
3.每次計算完,就檢查是否比 maxWealth 更大,如果是就更新
4.回傳maxWealth
https://ithelp.ithome.com.tw/upload/images/20250921/20169489alo66LOJOh.png
學習心得:
在這題裡,我練習到如何處理C語言的二維陣列指標 int**,並透過 accountsColSize[i] 來控制每一列的長度。雖然看起來只是簡單的二重迴圈,但它實際上幫助我更熟悉「二維資料結構的遍歷方式」。同時也提醒我變數初始化的重要性,我對C語言處理二維陣列的掌握又更穩固了一些。


上一篇
熟悉 C 語言陣列
下一篇
練習 C 語言追蹤最大值技巧
系列文
用leetcode系統化學習C語言12
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言